package com.station.Activitys.utils;

import android.app.Activity;
import android.support.annotation.NonNull;

import com.afollestad.materialdialogs.DialogAction;
import com.afollestad.materialdialogs.MaterialDialog;

/**
 * 项目名称：基站管理平台 手机app
 * 类描述：dialog 工具类
 * 创建人：张飞祥
 * 创建时间：2018/9/30 10:33
 * 修改人：张飞祥
 * 修改时间：2018/9/30 10:33
 * 修改备注：
 */
public abstract class DialogUtils {
    //实例化 dialog
    public  MaterialDialog mDialog = null;

    /**
     * 信息弹窗（一个按钮）
     */
    public void showMsgDialog(Activity activity, String title, String content, String positive){
        mDialog = new MaterialDialog.Builder(activity)
                .title(title)
                .content(content)
                .positiveText(positive)
                .onPositive(new MaterialDialog.SingleButtonCallback() {
                    @Override
                    public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
                        onPositiveClick();
                    }
                }).show();
        // 设置点击屏幕Dialog不消失
        mDialog.setCanceledOnTouchOutside(false);
        //取消Back键监听
        mDialog.setCancelable(false);
    }

    /**
     * 信息弹窗（两个按钮）
     */
    public void showMsgAllDialog(Activity activity, String title,
                                 String content, String negative, String positive){
        mDialog = new MaterialDialog.Builder(activity)
                .title(title)
                .content(content)
                .negativeText(negative)
                .onNegative(new MaterialDialog.SingleButtonCallback() {
                    @Override
                    public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
                        onNegativeClick();
                    }
                })
                .positiveText(positive)
                .onPositive(new MaterialDialog.SingleButtonCallback() {
                    @Override
                    public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
                        onPositiveClick();
                    }
                }).show();
        // 设置点击屏幕Dialog不消失
        mDialog.setCanceledOnTouchOutside(false);
        //取消Back键监听
        mDialog.setCancelable(false);
    }

    //提供 给外部 取消事件
    public abstract void onNegativeClick();
    //提供 给外部 确认事件
    public abstract void onPositiveClick();
}
